home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / lisp / clue.lha / clue / doc / clue.tex / node46_mn.html < prev    next >
Text File  |  1989-07-12  |  3KB  |  67 lines

  1.  
  2. <H3><A ID="SECTION001611100000000000000"><tex2html_anchor_invisible_mark></A> <A ID="ch:uips"><tex2html_anchor_mark></A><BR>
  3. The User Interface Programming System
  4. </H3><#4801#>
  5.            
  6.       
  7.  
  8.  
  9. <P>
  10. As defined by CLUE, contact objects represent an intermediate level of
  11. abstraction within a larger user interface programming system.
  12. CLUE relies upon the services of a lower-level subsystem typically referred to as
  13. a <#125#><B>window system</B><#125#><A ID="126"><tex2html_anchor_invisible_mark></A>. CLUE, in turn, forms the basis for a
  14. more comprehensive <#127#><B>user interface management system</B><#127#>
  15. <A ID="128"><tex2html_anchor_invisible_mark></A><A ID="129"><tex2html_anchor_invisible_mark></A>
  16. (UIMS).
  17.  
  18. <P>
  19. CLUE depends on a window system to provide programmer interfaces for controlling
  20. interactive I/O hardware  --- the display screen(s), the keyboard, the
  21. pointer, etc.  Specifically, CLUE is defined in
  22. terms of the X Window System protocol[#x-protocol#<tex2html_cite_mark>#1##<tex2html_cite_mark>#] and CLX<A ID="131"><tex2html_anchor_invisible_mark></A>, the
  23. Common Lisp programmer's interface to the X Window System[#clx#<tex2html_cite_mark>#1##<tex2html_cite_mark>#]. 
  24.  
  25. <P>
  26. Most window systems, including X, contain a component that is commonly called the 
  27. <#133#><B>window manager</B><#133#><A ID="134"><tex2html_anchor_invisible_mark></A>. The window manager is the
  28. part of the window system that provides a user interface to various operations on
  29. windows --- changing a window's position, size, visibility, etc.
  30. Since an X window manager is simply another application program (albeit a rather
  31. specialized one), the
  32. definition of a window manager is <#135#><EM>not</EM><#135#> included in the CLUE specification.
  33.  
  34. <P>
  35. CLUE distinguishes two different aspects of programming the user
  36. interface:
  37.  
  38. <P>
  39.  
  40. <UL>
  41. <LI>Defining a contact
  42. </LI>
  43. <LI>Using a contact
  44. </LI>
  45. </UL> 
  46. The <#138#><B>application programmer</B><#138#><A ID="139"><tex2html_anchor_invisible_mark></A> who
  47. instantiates and uses a contact object does not need to know 
  48. how the class and methods of the contact were implemented 
  49. by the 
  50. <#140#><B>contact programmer</B><#140#><A ID="141"><tex2html_anchor_invisible_mark></A>. 
  51. In particular, the
  52. window system interfaces used by the contact programmer need not be
  53. visible to the CLUE application programmer. 
  54.  
  55. <P>
  56. This distinction contributes to the separation of application
  57. programming
  58. from user interface programming, one of the primary goals of a
  59. UIMS.
  60. In terms of the Seeheim UIMS model[#pfaff-uims#<tex2html_cite_mark>#1##<tex2html_cite_mark>#], contacts represent
  61. the presentation (or lexical) component of a user interface.
  62. <A ID="143"><tex2html_anchor_invisible_mark></A>
  63. <A ID="144"><tex2html_anchor_invisible_mark></A>
  64.  
  65. <P>
  66. <#4811#>by-1<#4811#>
  67.  =0 <#4812#>=0 <#4816#>